package flash.display;

extern class DisplayObject extends flash.events.EventDispatcher, implements flash.display.IBitmapDrawable
{
	function globalToLocal(point:flash.geom.Point):flash.geom.Point;
	function localToGlobal(point:flash.geom.Point):flash.geom.Point;
	function getBounds(targetCoordinateSpace:flash.display.DisplayObject):flash.geom.Rectangle;
	function getRect(targetCoordinateSpace:flash.display.DisplayObject):flash.geom.Rectangle;
	function hitTestObject(obj:flash.display.DisplayObject):Bool;
	function hitTestPoint(x:Float, y:Float, shapeFlag:Bool = false):Bool;
	function globalToLocal3D(point:flash.geom.Point):flash.geom.Vector3D;
	function local3DToGlobal(point3d:flash.geom.Vector3D):flash.geom.Point;
	var cacheAsBitmap:Bool;
	var visible:Bool;
	var scaleX:Float;
	var scale9Grid:flash.geom.Rectangle;
	var parent(default, null):flash.display.DisplayObjectContainer;
	var rotationZ:Float;
	var mask:flash.display.DisplayObject;
	var mouseY(default, null):Float;
	var transform:flash.geom.Transform;
	var scrollRect:flash.geom.Rectangle;
	var filters:Array<flash.filters.BitmapFilter>;
	var blendShader(null, default):flash.display.Shader;
	var name:String;
	var mouseX(default, null):Float;
	var accessibilityProperties:flash.accessibility.AccessibilityProperties;
	var cacheAsBitmapMatrix:flash.geom.Matrix;
	var rotationY:Float;
	var loaderInfo(default, null):flash.display.LoaderInfo;
	var root(default, null):flash.display.DisplayObject;
	var z:Float;
	var y:Float;
	var x:Float;
	var stage(default, null):flash.display.Stage;
	var rotation:Float;
	var alpha:Float;
	var height:Float;
	var opaqueBackground:Null<UInt>;
	var scaleZ:Float;
	var rotationX:Float;
	var width:Float;
	var scaleY:Float;
	var blendMode:flash.display.BlendMode;
	function new():Void;
}